home *** CD-ROM | disk | FTP | other *** search
- /*
- * GetGlobal -- XFCN to transfer a HyperCard interface global to ProIcon
- */
-
- #include "IconXCmd.h"
-
- pascal void main(paramPtr)
- XCmdBlockPtr paramPtr;
- {
- Handle h;
-
- /* check parameter */
-
- if (paramPtr->paramCount != 1) {
- paramPtr->returnValue = (Handle)NewString("\pNeed one parameter in GetGlobal XFCN");
- PtoCstr(*(paramPtr->returnValue));
- return;
- }
-
- /* Lock parameter, convert to a Pascal string */
- h = paramPtr->params[0];
- HLock(h);
- CtoPstr(*h);
-
- /* Do lookup */
- paramPtr->inArgs[0] = (long)*h;
- paramPtr->request = xreqGetGlobal;
- ((procPtr)(paramPtr->entryPoint))();
-
- /* Unlock global name */
- HUnlock(h);
-
- /* Return result. Check for error. */
- if (paramPtr->result != xresSucc) {
- paramPtr->returnValue = (Handle)NewString("\pUnsufficient memory in SetGlobal XFCN");
- PtoCstr(*(paramPtr->returnValue));
- }
- else
- paramPtr->returnValue = (Handle)paramPtr->outArgs[0]; /* All OK, return value */
- }
-
-
-